﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.IO;

namespace EasyTrader
{
    public class CPSvrNew7221Table : EasyTrader.DataSet.ETDataTable
    {
        // 최초의 값들을 저장한다.
        public object[] firstVal = new object[] {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

        public double GetOpenVal(string a_ColName)
        {
            double openVal = 0;
            if (a_ColName == "코스피개인순매수")
            {
                openVal = Convert.ToDouble(firstVal[3]);
            }
            else if (a_ColName == "코스피외국인순매수")
            {
                openVal = Convert.ToDouble(firstVal[4]);
            }
            else if (a_ColName == "코스피기관계순매수")
            {
                openVal = Convert.ToDouble(firstVal[5]);
            }
            else if (a_ColName == "코스피투신순매수")
            {
                openVal = Convert.ToDouble(firstVal[6]);
            }
            else if (a_ColName == "코스피연기금순매수")
            {
                openVal = Convert.ToDouble(firstVal[7]);
            }
            else if (a_ColName == "코스피국가순매수")
            {
                openVal = Convert.ToDouble(firstVal[8]);
            }
            else if (a_ColName == "선물개인순매수")
            {
                openVal = Convert.ToDouble(firstVal[9]);
            }
            else if (a_ColName == "선물외국인순매수")
            {
                openVal = Convert.ToDouble(firstVal[10]);
            }
            else if (a_ColName == "선물기관순매수")
            {
                openVal = Convert.ToDouble(firstVal[11]);
            }
            else if (a_ColName == "개인옵션콜순매수")
            {
                openVal = Convert.ToDouble(firstVal[12]);
            }
            else if (a_ColName == "외국인옵션콜순매수")
            {
                openVal = Convert.ToDouble(firstVal[13]);
            }
            else if (a_ColName == "기관계옵션콜순매수")
            {
                openVal = Convert.ToDouble(firstVal[14]);
            }
            else if (a_ColName == "개인옵션풋순매수")
            {
                openVal = Convert.ToDouble(firstVal[15]);
            }
            else if (a_ColName == "외국인옵션풋순매수")
            {
                openVal = Convert.ToDouble(firstVal[16]);
            }
            else if (a_ColName == "기관계옵션풋순매수")
            {
                openVal = Convert.ToDouble(firstVal[17]);
            }

            return openVal;
        }

        public CPSvrNew7221Table(string a_Name)
            : base(a_Name)
        {
            Init();
        }

        // 여기서 행을 추가해 준다.
        public void Init()
        {
            // 총 18개 항목
            AddColumn("BarIndex");
            AddColumn("DayIndex");
            AddColumn("시각");
            AddColumn("코스피개인순매수"); // 2, 0
            AddColumn("코스피외국인순매수"); // 5, 0
            AddColumn("코스피기관계순매수"); // 8, 0
            AddColumn("코스피투신순매수"); // 17, 0
            AddColumn("코스피연기금순매수"); // 26, 0
            AddColumn("코스피국가순매수"); // 29, 0
            AddColumn("선물개인순매수"); // 2, 2
            AddColumn("선물외국인순매수"); // 5, 2
            AddColumn("선물기관순매수"); // 8, 2
            AddColumn("개인옵션콜순매수"); // 2, 3
            AddColumn("외국인옵션콜순매수"); // 5, 3
            AddColumn("기관계옵션콜순매수"); // 8, 3
            AddColumn("개인옵션풋순매수"); // 2, 4
            AddColumn("외국인옵션풋순매수"); // 5, 4
            AddColumn("기관계옵션풋순매수"); // 8, 4
        }

        public override void SaveTableToXml()
        {
            /*
            DateTime now = DateTime.Now;
            int year = now.Year;
            int month = now.Month;
            int day = now.Day;
            string fileName = Directory.GetCurrentDirectory();
            fileName += "\\";
            fileName += year.ToString() + "_";
            fileName += month.ToString() + "_";
            fileName += day.ToString() + "_";
            fileName += "CPSvrNew7221Open.txt";
            GlobalVar.SaveArrayData(fileName, firstVal);
             */
            // 여기서 할 일을 한다.
            base.SaveTableToXml();
        }
    }
}
